In computing, a web application (also known as “web app”) is a client-server software application that runs in a web browser. A web application is implemented in the form of code that is downloaded from a server to a client computer and executed in the web browser at that client computer. The web browser functions as the client to run, update, and maintain the web application. Examples formats of web application code include standard formats such as HTML (hypertext markup language) and JavaScript, which are supported by a variety of web browsers. The client-side web application code may access the server for data, but code for a web application primarily executes in the browser. Common types of web applications include webmail, online retail sales, online auctions, wikis, instant messaging services.
To render a web application document such as an HTML page, most web browsers use an internal object model similar to the DOM (document object model). DOM is a cross-platform and language-independent convention for representing and interacting with objects in HTML, XHTML (extensible HTML), and XML (extensible markup language) documents. The nodes of every document are organized in a tree structure, called the DOM tree. Objects in the DOM tree may be addressed and manipulated by using methods on the objects. For example, the web browser may execute JavaScript code of a web application that interacts with the DOM tree objects of the web application's HTML code.
Due to the object model, JavaScript is enabled to create dynamic web applications. JavaScript can add, change, and remove the HTML elements and attributes in an HTML document. Furthermore, JavaScript can change all the CSS (cascading style sheets) styles in the document, can react to all existing events in the document, and can create new events in the document.
Today, dynamic web applications cannot be built without learning JavaScript and the various frameworks used to develop the code that runs in the web browser.